package com.itheima02;

import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;

public class ComparatorDemo {
    public static void main(String[] args) {

        // 定义一个集合，存储字符串数据
        ArrayList<String> arrayList = new ArrayList<String>();
        arrayList.add("eeee");
        arrayList.add("rrr");
        arrayList.add("g");
        arrayList.add("bb");

        System.out.println("排序前：" + arrayList);

//        Collections.sort(arrayList);
        Collections.sort(arrayList, getComparator());

        System.out.println("排序后：" + arrayList);
    }

    private static Comparator<String> getComparator() {
        // 匿名内部类实现
//        Comparator<String> c = new Comparator<String>() {
//            @Override
//            public int compare(String o1, String o2) {
//                return o1.length() - o2.length();
//            }
//        };
//        return c;

//        return new Comparator<String>() {
//            @Override
//            public int compare(String o1, String o2) {
//                return o1.length() - o2.length();
//            }
//        };

        // Lambda 表达式实现
        return (s1, s2) -> s1.length() - s2.length();
    }
}
